/* CSP-201903P2 二十四点（表达式求值、栈）
3
9+3+4x3
1-2-3x4
6-3-2-1
*/
import java.util.*;

public class Main {
  public static int prio(char c) { // 算符优先级
    return (c == '+' || c == '-') ? 1 : 2;
  }
  public static int calc(int a, char c, int b) {
    switch (c){
      case '+': return a + b;
      case '-': return a - b;
      case 'x': return a * b;
      default: return a / b;
    }
  }
  public static void eval(ArrayDeque<Integer> opnd,
      ArrayDeque<Character> optr) {
    int b = opnd.pollLast(); // 先弹出右侧操作数
    int a = opnd.pollLast();
    char c = optr.pollLast();
    int x = calc(a, c, b);
    // System.out.printf("# %d %c %d = %d\n", a, c, b, x);
    opnd.addLast(x);
  }

  public static void main(String[] args) {
    Scanner scn = new Scanner(System.in);
    int n = scn.nextInt();
    for(int i = 0; i < n; ++i) {
      String s = scn.next();
      ArrayDeque<Integer> opnd = new ArrayDeque<Integer>();
      ArrayDeque<Character> optr = new ArrayDeque<Character>();
      opnd.addLast(s.charAt(0) - '0');
      for(int j = 1; j < 7; j += 2) {
        char o = s.charAt(j);
        int d = s.charAt(j+1) - '0';
        if(optr.isEmpty()) { // 左边没有操作符，入栈待决
          opnd.addLast(d);
          optr.addLast(o);
        }else if(prio(optr.getLast()) >= prio(o)) {
          // 栈顶操作符优先或平级，先对栈求值
          eval(opnd, optr);
          opnd.addLast(d);
          optr.addLast(o);
        }else { // 当前操作符优先，先算，再把结果压栈
          int a = opnd.pollLast();
          int x = calc(a, o, d);
          opnd.addLast(x);
        }
      }
      eval(opnd, optr);
      int r = opnd.getLast();
      System.out.printf("%s\n", r == 24 ? "Yes" : "No");
    }
  }
}
